Correlation Coefficient TableThis is a sample PineSript code implementation using Correlation Coefficient. It uses the ta.correlation library of Pinescript and calculates the correlation based on user input length. The results are then plotted on a table. The corr value displays the actual correlation coefficient value while the Corr Status displays the interpretation of the correlation coefficient values.
The script takes the following input
Source Symbol - This is the base symbol which will be used in calculating correlation coefficient. In my case, since i am looking more often on crypto. I defaulted it to BTCUSDT
Symbol 1 - Symbol 5 - These are the coins that will be compared to our base symbol for correlation.
Source - You can select on which price source you want to be calculated. By default this is set to candle close price.
Length - The number of price bar to look back and retrieve correlation coefficient. Set to 20 bars by default.
Table Settings - Since the correlation coefficient are displayed on a table. An option to customize the table settings are presented.
The Correlation Status column was based on this Interpretation:
For more information, read this article www.tradingview.com
ابحث في النصوص البرمجية عن "THE SCRIPT"
Liquidity Swings [LuxAlgo]The liquidity swings indicator highlights swing areas with existent trading activity. The number of times price revisited a swing area is highlighted by a zone delimiting the swing areas. Additionally, the accumulated volume within swing areas is highlighted by labels on the chart. An option to filter out swing areas with volume/counts not reaching a user-set threshold is also included.
This indicator by its very nature is not real-time and is meant for descriptive analysis alongside other components of the script. This is normal behavior for scripts detecting pivots as a part of a system and it is important you are aware the pivot labels are not designed to be traded in real-time themselves.
🔶 USAGE
The indicator can be used to highlight significant swing areas, these can be accumulation/distribution zones on lower timeframes and might play a role as future support or resistance.
Swing levels are also highlighted, when a swing level is broken it is displayed as a dashed line. A broken swing high is a bullish indication, while a broken swing low is a bearish indication.
Filtering swing areas by volume allows to only show significant swing areas with an higher degree of liquidity. These swing areas can be wider, highlighting higher volatility, or might have been visited by the price more frequently.
🔶 SETTINGS
Pivot Lookback : Lookback period used for the calculation of pivot points.
Swing Area : Determine how the swing area is calculated, "Wick Extremity" will use the range from price high to the maximum between price close/open in case of a swing high, and the range from price low to the minimum between price close/open in case of a swing low. "Full Range" will use the full candle range as swing area.
Intrabar Precision : Use intrabar data to calculate the accumulated volume within a swing area, this allows obtaining more precise results.
Filter Areas By : Determine how swing areas are filtered out, "Count" will filter out swing areas where price visited the area a number of time inferior to the user set threshold. "Volume" will filter out swing areas where the accumulated volume within the area is inferior to the user set threshold.
🔹 Style
Swing High : Show swing highs.
Swing Low : Show swing lows.
Label Size : Size of the labels on the chart.
Note that swing points are confirmed after Pivot Lookback bars, as such all elements are displayed retrospectively.
((Bearish)) Candle Above EMASGood Morning from the UK.
Todays script is a simple vieweing of when candles close above a certain moving average - when the market is bearish conditions - candle which close above the moving average can be viewed as a bearish signal along with confluences such as price action. This script is best on the Daily and we can expect big price moves away from this area.
The below example, we have a bearish set up with a break of trendline and then a break of a base which would 1) strong area as price is unlikely to go past this area which would make this a supply zone.
This was then followed by the signal of the candle closing above the 100ema and the 50ema.
The script is likened to my one of my previous scripts which portrays the bullish ema candle closes.
I will be making a price action publish soon if that is of interest to the public.
Multiple Non-Anchored VWAPA lot of VWAP scripts are anchored and only allow single VWAP additions. This script allows up to 5 simultaneous VWAPs, for example monthly, quarterly, yearly, 3 years, etc. Can also be used on smaller timeframes. The non-anchored part of the script allows it to be constantly rolling, with no resets.
I do not endorse this script, it was created at my request :)
Improved Z-ScoreStandard Z-Score scripts lack customization of parameters that I personally desire when doing quantitative analysis. This is an improved Z-Score Indicator to add to your charts that lets you customize various inputs.
Below are the current features:
1) Ticker Type - which data would you like to use for the ticker input - Open, High, Low, Close, OHLC4
2) Ticker Smoothing? - sometimes if you have noisy data, it could be useful to smooth the ticker with a very fast EMA. If this is set to true, the ticker data will be smoothed with an EMA with period that you specify.
3) Ticker Smoothing Period - if Ticker Smoothing? is set to true, this will allow you to specify the smoothing period of the fast EMA - I usually use a 3-period for all of my quantitative analysis, if I am using smoothing.
4) MA Type - Z-Scores are normalized by subtracting a moving average. This allows you to select either a Simple Moving Average (SMA) or an Exponential Moving Average (EMA) - the standard is to use SMA.
5) MA Period - the previous X number of bars that you would like to use for normalization. The default is set to 21 (this is roughly 1 month of trading days data for a daily chart).
5) Standard Deviation Period - Z-Scores are normalized by dividing by the standard deviation over X previous periods. This allows you the chance to customize. Default is 252 (this is roughly 1 year of trading days data for a daily chart).
I can add more features if folks are interested, let me know! I hope you like the script.
Best regards,
-Jim Bosse-
Volume [Educational]Hello All,
This is an educational work and it's developed to show how to write scripts that will work like built-in volume indicator.
We have new features in Pine Script™ Language, such chart.bg_color, chart.fg_color, chart.left_visible_bar_time, chart.right_visible_bar_time and many more. Many Thanks to Tradingview and Pine Team for such great additions!
You can find more information about these new functions here .
How the script works?
- At the first step it calculates how many visible bar on the chart by using chart.right_visible_bar_time and chart.left_visible_bar_time functions.
- Calculates the zero line for the volume
- Finds maximum volume on visible area and normalize all volume values
- Draws volume bars
- Shows volume info as indicator value. in this step it uses chart.fg_color and plotarrow() commands to show the values in optimum color.
In order to place the indicator at the bottom of the chart, Please set Bottom Margin = 0 as shown in the following screenshot:
You can change the volume bar colors optionally.
An Example screenshot with different volume bar colors:
Enjoy!
McDonald's Pattern [LuxAlgo]Tradingview asked, we delivered. This script fits a cubic Bezier curve using tops/bottoms in order to approximate a McDonalds pattern, a popular meme pattern in the crypto trading community.
Traditionally the McDonalds pattern is described by an M pattern with deep retracement (> 50%), forming a McDonalds logo.
Please note that this indicator is a meme & should not be taken seriously. Some aspects of this indicator are not real-time and meant for descriptive analysis alongside other components of this script, in this case, for entertainment purposes. We suggest looking through our other open-source scripts if you’re looking for more serious tools.
🔶 USAGE
The script fits Bezier curves using specific tops/bottoms as control points. When the distance between tops and bottoms values is relatively small, the user can more easily identify the pattern.
A score is shown on the top right of the chart, aiming to return how close the returned pattern is to the original logo.
A regular Mcdonalds pattern would return a red background, while an inverted pattern would return a green one.
🔶 SETTINGS
Length: Sensitivity of tops/bottoms detection. The method does not make use of pivot points, using rolling maximums/minimums instead.
Use First Bar As Vertex: Use the price and bar index of the last bar as vertex.
Silen's Financials P/E & P/S[x10] RatesThis script aims to give a better visualization of P/E and P/S rates compared to the build-in "Price to earnings ratio" and "Price to sales ratio" in the "Financials" Section of Tradingview. For those of you don't know, those rates compare earnings and sales with your share price in regard to market cap and outstanding shares.
The scripts differs to the build-in versions in the following points:
- P/E & P/S rates are combined in one indicator
- Negative P/E rates are displayed better: Positive P/E rates are green, Negative P/E rates are red
- For visualization reasons, the indicator will cap positive and negative P/E rates at 100. (P/E rates above those levels are not siginificant either way)
- P/E & P/S rate are directly displayed on the graph
- Both P/E and P/S rates are combined on one left scale
- For visualization reasons, P/S rate is showing 10x the actual P/S rate. Using the standard P/S rate would result in hard-to-recognize changes of the P/S line.
To sum up:
- Positive P/E rates are green
- Negative P/E rate are red
- P/S rates are multiplied by 1 0
- P/S rates are yellow
How to use P/E and P/S rates:
The US market average for P/E rates is roughly ~18 in the US right now (10/2022) while the market average for P/S rates is roughly ~3 in the US. Note that average P/E and P/S can change when the market situation changes.
P/E and P/S rates help you value your stock better and help you decide whether your stock is undervalued or overvalued compared to the market or the industry when it comes to earnings and sales. If you compare to Market averages, a positive P/E of less than 18 means that your stock is likely unvervalued. A P/S rate below 3 (30 in the chart!) means that your stock is likely undervalued as well. If your stock shows rates above those, it is likely that it is overvalued compared to market averages.
Please note that P/E and P/S rates are not the only factors that make up a stock valuation. Valuations are complex and subjective.
A positive P/E rate also means that your company is profitable.
A Negative P/E rate means that your company is unprofitable.
If you have any questions or feedback let me know!
Disclaimer: This script doesn't show the actual P/S rate. It shows the P/S rate multiplied by 10, due to visualization issues. Positive P/E Rates above 100 are displayed as 100. Positive P/E rates are green, Negative P/E rates are red and multiplied by -1.
Disclaimer2: @Tradingview_Team: I couldn't find the right category for this script but categories are mandatory. I assume that "Breadth Indicators" is still the closest there is. Please let me know if you want me to change the category.
Disclaimer3: For visualization, the opacity of the displayed image is 70%. The standard opacity for the P/E and P/S lines is 50% and can be changed in the indicator settings. I found this setting more useful when working together with other indicators on the same chart
Disclaimer4: Earnings Per Share, Total Revenue used are TTM. Total Shares Outstanding used are FQ.
0_dteUSAGE
This script guages the probability of an underlying moving a certain amount on expiration day, to aid the popular "0 dte" strategy. The script counts how many next-day moves exceeded a given magnitude in the past, under similar conditions. The inputs are:
mark_mode:
- "open": measures the magnitude as "open to close"--a true 0 dte.
- "previous close": for lazy people who don't want to wake up early. measures magnitude from the previous day's close.
move_mode:
- "percent": measures moves that exceed a given percentage.
- "absolute": measures moves that exceed a point value.
move-dir: measure only up moves, down moves, or both.
vol_model: the model for realized volatility. (may add more later).
min_vol: only measure moves when realized vol is above this value.
max_vol: only measure moves when realized vol is below this value.
precision: number of digits printed in the output table.
EXAMPLE:
- mark_mode: "previous close"
- move_mode: "percent"
- move_dir: "up"
- move_mag: 0.07
- vol_model: hv30
- min_vol: 0.2
- max_vol: 0.5
These settings will count the number of trading days that closed 7% higher than the previous day's close, when the previous day's realized volatility (annualized) was between 20% and 50%. The outputs are:
- current vol: green plot. Today's realized vol. Shown for convenience.
- max and min vol: red plots. Also shown for convenience.
- count: the number of days that exceeded the chosen magnitude, when the previous day's realized volatility was within the chosen bounds.
- total: the total number of days where realized volatility was within the chosen bounds
- probability: count / total. the percentage of days that exceeded the move when volatility was within the bounds.
- move: plotted as a purple line. purple "X" labels are plotted above
- bars where the move exceeded the magnitude threshold and volatility was in-bounds. a "hit".
CONCLUSION
This script is based on the idea that realized volatility has some bearing on future volatility. By seeing what happened in the past when volatility was close to its current value, we may be able to assess the probability that our short put will be in the money, tomorrow, and our account devastated.
NOTE: Unlike many of my other scripts, all percentages--both inputs and outputs--are given in fractional form. E.g., 0.01 means 1%.
Pivot High/Low Analysis & Forecast [LuxAlgo]Returns pivot points high/low alongside the percentage change between one pivot and the previous one (Δ%) and the distance between the same type of pivots in bars (Δt). The trailing mean for each of these metrics is returned on a dashboard on the chart. The indicator also returns an estimate of the future time position of the pivot points.
This indicator by its very nature is not real-time and is meant for descriptive analysis alongside other components of the script. This is normal behavior for scripts detecting pivots as a part of a system and it is important you are aware the pivot labels are not designed to be traded in real-time themselves
🔶 USAGE
The indicator can provide information helping the user to infer the position of future pivot points. This information is directly used in the indicator to provide such forecasting. Note that each metric is calculated relative to the same type of pivot points.
It is also common for analysts to use pivot points for the construction of various figures, getting the percentage change and distance for each pivot point can allow them to eventually filter out points of non-interest.
🔹 Forecast
We use the trailing mean of the distance between respective pivots to estimate the time position of future pivot points, this can be useful to estimate the location of future tops/bottoms. The time position of the forecasted pivot is given by a vertical dashed line on the chart.
We can see a successful application of this method below:
Above we see the forecasted pivots for BTCUSD15. The forecast of interest being the pivot high. We highlight the forecast position with a blue dotted line for reference.
After some time we obtain a new pivot high with a new forecast. However, we can see that the time location of this new pivot high matches perfectly with the prior forecast.
The position in time for the forecast is given by:
x1_ph + E
x1_pl + E
where x1_ph denotes the position in time of the most recent pivot high. x1_pl denotes the position in time of the most recent pivot low and E the average distance between respective pivot points.
🔶 SETTINGS
Length: Window size for the detection of pivot points.
Show Forecasted Pivots: Display forecast of future pivot points.
🔹 Dashboard
Dashboard Location: Location of the dashboard on the chart
Dashboard Size: Size of the dashboard on the chart
Text/Frame Color: Determines the color of the frame grid as well as the text color
Ultimate Moving Average [CC+RedK]The Ultimate Moving Average was created by myself and @RedKTrader and I can proudly say that this is the holy grail of moving averages. Not only does this moving average react to the current price trends like a normal moving average but we have also included the ability to react to volume, momentum, and volatility. The only thing this moving average can't do is wash your car.
The Ultimate Moving Average doesn't even use a set length so it is fully adaptable to any type of market whether it is choppy or trending. It tightens during volatile markets and loosens during choppy markets. I have included 3 of the main moving averages of a fixed length of 20 days to show you just how much better our moving average is.
The overall concept of this moving average was to fully adapt to any and all changes of the underlying stock. We used my Variable Power Weighted Moving Average as a base and changed the script to adapt to momentum instead. The idea behind this was when momentum reaches an extreme in either direction we tighten the moving average to be able to react accordingly. We then used the idea behind my Variable Length Moving Average to be able to react to volatility and make the length itself into a separate variable.
All of this work combined to create the most reactive moving average out there and I guarantee you will be using this in your daily trading! Let me know if there are any other scripts you would like to see me publish.
Efficient Support & Resistance LevelsThis script is a mixture of my two previous scripts "True Strong Classical Support/Resistance Levels" and "Hidden Supports & Resistances + Round Levels". This combination brings on better identification of the most efficient support/resistance levels.
Note that "Hidden SnR Levels" part of the code is only expected to work on Forex charts, but apart from that, the other parts could be applied to any chart.
The script may:
- Draw classical support/resistance levels which retraced the price previously, aided by multi-timeframe analysis
- Draw hidden support/resistance levels based on psychological patterns of the price
- Adjust to wicks better than Pine Script built-in pivot functions
- Differ the levels color based on chart reactions
- Merge nearby classical levels to avoid congestion on the chart
Feel free to use it and send me your thoughts.
Candle State (The Strat)This script identifies the 2 different Candle States for use in #TheStrat.
Candle Up - The close of the current candle is greater than the close of the previous candle.
Candle Down - The close of the current candle is less than the close of the previous candle.
Though this script is extremely simple it is a teaching aid for #TheStrat.
The script also assists in the identification of up and down candles with gaps where the color of candle will not always match the Candle State.
Analysis of the candle types can help you define actionable signals and draw broadening formations.
Disclaimer: All scripts from this account are for informational purposes only and do not produce buy or sell recommendations.
© 2020 Crinklebine
Auto Adjust To Ideal Pearson's R OscillatorThis is meant to be a partner indicator to "Linear Regression - Auto Adjust To Ideal Pearson's R (Min & Max)" which can be found under my profile on the scripts I have made.
It's important the the ideal Pearsons R + and - ideal ranges are the same as the other script so you can visualize the results better and what is going on. I set them to default to 0.85 for strong confidence levels.
This simply graphs what the Pearsons's R Long Term Trend (Red) and Short Term Trend (Green) are doing. I noticed that they tend to oscillate in predictable ways.
The white line signifies low confidence level in a trend and usually means there is sideways trading going on.
If you are unfamiliar with Pearson's R then below will help:
+ Pearsons R means there is a downtrend
- Pearsons R means there is an uptrend
The closer the value is to 1 the more sure it's a downtrend.
The closer the value is to -1 the more sure it's an uptrend.
For this reason I colored the bottom lines 'green' to indicate buying zones and 'red' for the top lines to indicate potential shorting zones.
If you look at this indicator in replay mode in tandem with my other indicator you will see they work well together to help you identify long term trends.
The default values are 48 and 360 for the minimum allowed length of a trend and maximum length. If you find the script is to slow you can change these but make sure you do it for the values on the other script as well so they line up.
As always the code is open source.
Leavitt Convolutions Multicator - Jay Leavitt, Ph.D.Hot off the press, I present this next generation "Leavitt Convolutions Multicator" employing PSv4.0, originally formulated by Jay Leavitt, Ph.D. for TASC - January 2020 Traders Tips. Basically it's an all-in-one combination of three Leavitt indicators. This triplet indicator, being less than a 60 line implementation at initial release, is a heavily modified version of the original indicator using novel techniques, surpassing Leavitt's original intended design.
Utilizing the "Power of Pine", I included the maximum amount of features I could surmise in an ultra small yet powerful package. Configurations are displayed above in multiple scenarios that should be suitable for most traders.
Features List Includes:
Dark Background - Easily disabled in indicator Settings->Style for "Light" charts or with Pine commenting
AND much, much more... You have the source!
For those of you who are new to Pine Script, this script may also help you understand advanced programming techniques in Pine and how they may be utilized in a most effective manner. Most notably, the script shows how to potentially combine three indicators in one with Pine. This is commonly what my dense intricate code looks like behind the veil, and if you are wondering why there is no notes, that's because the notation is in the variable naming.
The comments section below is solely just for commenting and other remarks, ideas, compliments, etc... regarding only this indicator, not others. When available time provides itself, I will consider your inquiries, thoughts, and concepts presented below in the comments section, should you have any questions or comments regarding this indicator. When my indicators achieve more prevalent use by TV members, I may implement more ideas when they present themselves as worthy additions. As always, "Like" it if you simply just like it with a proper thumbs up, and also return to my scripts list occasionally for additional postings. Have a profitable future everyone!
TR FVG & Swing High Low FinderTR FVG & Swing Level Finder
Overview:
The TR FVG & Swing Level Finder is a powerful Pine Script indicator designed for traders who want to identify Fair Value Gaps (FVGs) and Swing Highs/Lows on their charts. This indicator combines two essential technical analysis tools into one, helping traders spot potential areas of support, resistance, and trend reversals. FVGs are price gaps that often act as areas of interest for price to return to, while swing highs and lows help identify key turning points in the market. The indicator is highly customizable, allowing users to adjust colors, limits, and display options to suit their trading style.
Key Features:
1: Fair Value Gap (FVG) Detection:
- Identifies Bullish FVGs: Occur when the high of two candles ago is lower than the low of the current candle, indicating a potential upward price movement.
- Identifies Bearish FVGs: Occur when the low of two candles ago is higher than the high of the current candle, indicating a potential downward price movement.
- Displays FVGs as colored boxes on the chart, with customizable border and fill colors based on the timeframe.
- Labels each FVG box with the corresponding timeframe (e.g., "1m FVG", "1h FVG", "Daily FVG").
2: Swing High and Swing Low Detection:
- Detects Swing Highs: A 3-candle pattern where the middle candle's high is higher than the highs of the candles on either side.
- Detects Swing Lows: A 3-candle pattern where the middle candle's low is lower than the lows of the candles on either side.
- Draws a solid black line with 50% opacity at each swing high and low, extending 5 bars to the right for better visibility.
- Adds a small Swing High or Swing Low label at the right end of each line, colored according to user-defined settings.
3: Timeframe-Specific FVG Visualization:
- FVGs are color-coded based on the chart's timeframe, making it easy to distinguish between FVGs on different timeframes.
- Each timeframe has its own fill color for bullish and bearish FVGs, with adjustable transparency for better chart clarity.
- A dashed black line is drawn in the middle of each FVG box to highlight the midpoint of the gap.
4: Customizable Display Options:
- FVG Limit: Control the maximum number of FVGs displayed on the chart (from 1 to 20).
- Extend Options for FVG Boxes:
- "None": FVG boxes extend only 2 bars to the right.
- "Limited": FVG boxes extend a user-defined number of candles to the right (1 to 100 candles).
- "Default": FVG boxes extend 3 bars to the right of the current bar.
- Color Customization:
- Set border colors for bullish and bearish FVGs.
- Adjust fill colors for FVGs on different timeframes (1m, 5m, 15m, 30m, 1h, 4h, Daily, Weekly, Monthly).
- Customize the colors of swing high and swing low labels.
5: Performance Optimization:
- The indicator only plots FVGs and swings on the last confirmed bar (barstate.islastconfirmedhistory), ensuring efficient performance and reducing chart clutter.
- Limits the number of displayed FVGs and swings to the user-defined fvgLimit, keeping the chart clean and focused on the most recent price action.
6: Inputs and Customization:
- Number of FVGs to Show (fvgLimit): Set the maximum number of FVGs and swings to display (default: 3, range: 1 to 20).
- Bullish FVG Border Color (bullishColor): Choose the border color for bullish FVGs (default: green).
- Bearish FVG Border Color (bearishColor): Choose the border color for bearish FVGs (default: red).
- Swing High Color (swingHighColor): Set the color for swing high labels (default: blue).
- Swing Low Color (swingLowColor): Set the color for swing low labels (default: purple).
- Extend Options:
- Extend Option (extendOption): Choose how far FVG boxes extend to the right ("None", "Limited", or "Default"; default: "Default").
- Extend Candles (extendCandles): If "Limited" is selected, specify the number of candles to extend FVG boxes (default: 8, range: 1 to 100).
- Timeframe-Specific Fill Colors:
- Customize fill colors for bullish and bearish FVGs on various timeframes (1m, 5m, 15m, 30m, 1h, 4h, Daily, Weekly, Monthly).
- Each fill color has a default transparency (e.g., 93% for most timeframes, 90% for 30m), which can be adjusted as needed.
How to Use:
1: Add the Indicator to Your Chart:
- Open TradingView, go to the Pine Editor, and paste the script.
- Click "Add to Chart" to apply the indicator to your current chart.
2: Adjust Settings:
- Open the indicator settings by clicking the gear icon next to the indicator name on your chart.
- Modify the inputs to suit your preferences:
- Set the number of FVGs and swings to display.
- Choose your preferred colors for FVGs and swings.
- Adjust the extend options for FVG boxes.
3: Interpret the Indicator:
- FVG Boxes: Look for colored boxes on the chart, which represent Fair Value Gaps. Bullish FVGs (green borders by default) suggest potential buying opportunities, while bearish FVGs (red borders by default) suggest potential selling opportunities. The label inside each box indicates the timeframe of the FVG.
- Swing Highs and Lows: Identify key turning points with solid black lines (50% opacity) at swing highs and lows. Each line extends 5 bars to the right, with an "SH" (Swing High) or "SL" (Swing Low) label at the end. Swing highs can act as resistance levels, while swing lows can act as support levels.
4: Combine with Your Strategy:
- Use FVGs to identify areas where price might return to fill the gap, often acting as support or resistance.
- Use swing highs and lows to spot potential trend reversals or to set stop-loss and take-profit levels.
- Combine the indicator with other tools (e.g., trendlines, moving averages) for a more comprehensive trading strategy.
Notes:
- The indicator works on all timeframes, but the appearance of FVGs and swings will vary depending on the chart's timeframe.
- For best results, use the indicator on a clean chart to avoid visual clutter, especially if you increase the fvgLimit.
- The swing high/low lines are drawn with 50% opacity to ensure they don’t overpower other chart elements, but they are still clearly visible.
Author’s Note:
This script was developed to help traders identify key price levels with ease. I hope it adds value to your trading! If you have any feedback or suggestions for improvement, feel free to leave a comment. Happy trading!